package com.acaslless.core.constant;

/**
 * 系统常量
 *
 * @author haohan
 * @date 2024/7/30 10:28
 **/
public class Constant {

    /**
     * 符号
     *
     * ""
     * 。
     * 反斜杠
     * :
     * 是
     * 否
     * 前缀
     * 后缀
     * */
    public static final String EMPTY = "";
    public static final String DOT = ".";
    public static final String SLASHES = "/";
    public static final String COLON = ":";
    public static final String ETC = "*";
    public static final Integer TRUE = 1;
    public static final Integer FALSE = 0;
    public static final String PREFIX = "prefix";
    public static final String SUFFIX = "suffix";

    /**
     * 数字
     * */
    public static final String ZERO = "0";
    public static final String ONE = "1";

    /**
     * HTTP 字段
     * */
    public static final String HTTP_HEADER_USER_AGENT = "User-Agent";
    public static final String HTTP_HEADER_AUTH = "Authorization";
    public static final String HTTP_USER_ID = "User-Id";
    public static final String HTTP_USER_NAME = "User-Name";
    public static final String HTTP_USER_TENANT = "User-Tenant";
    public static final String HTTP_BASE_FROM_SOURCE = "From-Source";
    public static final String HTTP_GRANT_TYPE = "Grant-Type";
    public static final String HTTP_GRANT_TYPE_REFRESH_TOKEN = "Refresh-Token";
    public static final String HTTP_GRANT_TYPE_ACCESS_TOKEN = "Access-Token";

    /**
     * 日志
     * */
    public static final String INITIALIZE_LOG = "=================> {} <=================";

    /**
     * token 相关
     *
     * 用户id
     * 用户名
     * 租户id
     * accessToken
     * refreshToken
     * */
    public static final String USER_ID = "userId";
    public static final String USERNAME = "username";
    public static final String TENANT_ID = "tenantId";
    public static final String TOKEN = "token";
    public static final String ACCESS_TOKEN = "accessToken";
    public static final String REFRESH_TOKEN = "refreshToken";


    /**
     * 验证码相关
     *
     * 验证码开关
     * 登录
     * 注册
     * 密码修改
     * */
    public static final String CAPTCHA_ENABLED = "captchaEnabled";
    public static final String CODE_SIGN_IN = "signIn";
    public static final String CODE_SIGN_UP = "signUp";
    public static final String CODE_RESET_PASSWORD = "resetPwd";

    /**
     * 删除标识
     *
     * 正常
     * 删除
     * */
    public static final String DEL_FLAG_NORMAL = "del_flag_n";
    public static final String DEL_FLAG_DEL = "del_flag_d";

    /**
     * OSS 配置
     * */
    /* 云服务商*/
    public static final String[] OSS_CLOUD_SERVICE = new String[]{"aliyun", "qcloud", "qiniu", "obs"};
    public static final Integer OSS_IS_HTTPS = 1;

    /**
     * 消息
     *
     * 业务：发送
     * 业务：撤回
     * */
    public static final String MESSAGE_SEND = "messageBusinessSendStrategy";
    public static final String MESSAGE_RECALL = "messageBusinessRecallStrategy";

    /**
     * message 消息相关
     *
     * 延时、定时消息发送（交换机、队列、路由）定义
     * 即时消息发送（交换机、队列、路由）定义
     * */
    public static final String DELAYED_MESSAGE_SEND_EXCHANGE = "delayed.message.send.exchange";
    public static final String DELAYED_MESSAGE_SEND_QUEUE = "delayed.message.send.queue";
    public static final String DELAYED_MESSAGE_SEND_ROUTE_KEY = "delayed.message.send.route.key";
    public static final String MESSAGE_SEND_EXCHANGE = "message.send.exchange";
    public static final String MESSAGE_SEND_QUEUE = "message.send.queue";
    public static final String MESSAGE_SEND_ROUTE_KEY = "message.send.route.key";

    /**
     * 账户初始化前缀
     * */
    public static final String ACCOUNT_DEFAULT_PREFIX = "ac_";

    /**
     * 状态
     *
     * 正常
     * 禁用
     * 锁定
     *
     * */
    public static final Integer USER_STATUS_NORMAL = 0;
    public static final Integer USER_STATUS_DISABLE = 1;
    public static final Integer USER_STATUS_LOCKED = 3;





}
